package com.dc.commons.persistence.embeddable;

import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.Transient;

import com.dc.commons.dict.Dictionary;

/*******************************************************************************<P>
 * 文件名: Organ.java <br>
 * 版本: 1.0<br>
 * 描述:<br>
 * 版权所有: <br>
 * <P>
 * 创建者: 王建栋 <br>
 * 创建日期: 2015年12月17日 下午9:22:46<br>
 * 修改者: <br>
 * 修改日期: <br>
 * 修改说明: <br>
 ******************************************************************************/
@Embeddable
public class Organ implements Dictionary{
	
	private String code;
	private String name;
	
	public Organ(){
		
	}
	
	public Organ(String code){
		this.code=code;
	}

	public void setCode(String code) {
		//TODO 在这里 通过缓存 获取 机构信息
		this.code = code;
	}

	/* (non-Javadoc)
	 * @see com.dc.commons.dict.Dictionary#getCode()
	 */
	@Override
	@Column(name="CODE",length=50)
	public String getCode() {
		return this.code;
	}

	/* (non-Javadoc)
	 * @see com.dc.commons.dict.Dictionary#getName()
	 */
	@Override
	@Transient
	public String getName() {
		return this.name;
	}
	
	@Transient
	public Organ name(String name){
		this.name=name;
		return this;
	}
	
	public static Organ valueOf(String code){
		return new Organ(code);
	}

}
